package com.hxzy.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxzy.dto.SysRoleSaveDTO;
import com.hxzy.dto.SysRoleSearchDTO;
import com.hxzy.entity.SysRole;

import java.math.BigDecimal;
import java.util.List;
import java.util.Set;

/**
 * 角色
 */
public interface SysRoleService extends IService<SysRole> {


    /**
     * 分页查询
     * @param dto
     * @return
     */
    IPage<SysRole> search(SysRoleSearchDTO dto);

    /**
     * 查询该角色拥有的菜单ID
     * @param roleId
     * @return
     */
    List<BigDecimal> getRoleOwnMenuId(BigDecimal roleId);

    /**
     * 新增操作
     * @param sysRoleSaveDTO
     * @return
     */
    boolean add(SysRoleSaveDTO sysRoleSaveDTO);

    /**
     * 修改操作
     * @param sysRoleSaveDTO
     * @return
     */
    boolean edit(SysRoleSaveDTO sysRoleSaveDTO);

    /**
     * 判断当前用户角色KEY
     * @param adminId
     * @return
     */
    Set<String> findRoleKeyByAdminId(Long adminId);
}
